@import com.fasterxml.jackson.databind.JsonNode
@(fp : JsonNode)(pFp: ParsedFP)(per : JsonNode)(os: JsonNode)(brow: JsonNode)(lang: JsonNode)(nbTotal: Double)(nbIdent: Integer)

@display(column : String) = {
    @defining(per.get(column).doubleValue()) { value =>
        @if(value == -1) {
            <td>Unique</td>
        } else {
            @if(value >= 0.1) {
                <td>@("%.2f".format(value))%</td>
            } else {
                <td><0.1%</td>
            }
        }
        <td id="@column.toString().concat("Val")">@fp.get(column)</td>
    }
}

@header = {
}
@footer = {
}

@main(header, footer , "/fp") {

    <h1>@Messages("fp.title")</h1>

    <!-- Uniqueness -->
    @if(nbIdent<2) {
        <h1 style="color:red"><strong>@Messages("fp.track1")</strong></h1>
    } else {
        @if(nbIdent/nbTotal< 0.05) {
            <h1 style="color:orange">@Messages("fp.track2")</h1>
        } else {
            <h1 style="color:green">@Messages("fp.track3")</h1>
        }
    }

    <!-- Browser -->
    @if(pFp.getBrowser() != "Others"){
        <p>@{"%.2f".format(per.get(pFp.getBrowser()).doubleValue())} @Messages("fp.browser1") <strong>@pFp.getBrowser()</strong>@Messages("fp.browser2")</p>
        <p>@{"%.2f".format(brow.get(pFp.getBrowser()).get(pFp.getBrowserVersion()).doubleValue()*100/nbTotal)}
            @Messages("fp.browser1") <strong>@pFp.getBrowser() @pFp.getBrowserVersion()</strong>@Messages("fp.browser2")</p>
    } else {
        <p>@{"%.2f".format(per.get(pFp.getBrowser()).doubleValue())} @Messages("fp.unknownBrow")</p>
    }

    <!-- OS -->
    @if(pFp.getOs() != "Others") {
        <p>@{"%.2f".format(per.get(pFp.getOs()).doubleValue())} @Messages("fp.os1") <strong>@pFp.getOs()</strong>@Messages("fp.os2")</p>
        @if(pFp.getOsVersion() != "Other distros") {
            <p>@{"%.2f".format(os.get(pFp.getOs()).get(pFp.getOsVersion()).doubleValue() * 100 / nbTotal)} @Messages("fp.os1")
                <strong>@pFp.getOs() @pFp.getOsVersion()</strong>@Messages("fp.os2")</p>
        }
    } else {
         <p>@{"%.2f".format(per.get(pFp.getOs()).doubleValue())} @Messages("fp.unknownOs")</p>
    }

    <!-- Language -->
    @if(pFp.getLanguage() != "Not communicated") {
        <p>@{"%.2f".format(lang.get(pFp.getLanguage()).doubleValue() * 100 / nbTotal)} @Messages("fp.lang1")
            <strong>"@pFp.getLanguage()"</strong>@Messages("fp.lang2")</p>
    }

    <!-- Uniqueness details-->
    @if(nbIdent<2) {
        <p>@Html(Messages("fp.uniq1")) @("%.0f".format(nbTotal)) @Messages("fp.uniq2")</p>
    } else {
        <p> @Html(Messages("fp.notuniq1")) @nbIdent @Messages("fp.notuniq2") @("%.0f".format(nbTotal))
            @Messages("fp.notuniq3") (@{"%.2f".format(nbIdent*100.0/nbTotal)} @Messages("fp.notuniq4")</p>
    }


    <h1>@Messages("fp.detailsTitle")</h1>
    <table class="table table-striped table-hover">
        <thead>
            <tr>
                <th>@Messages("fp.detAtt")</th>
                <th>@Messages("fp.detSim")</th>
                <th>@Messages("fp.detVal")</th>
            </tr>
        </thead>
        <tbody>

            <tr id="userAgentHttp">
                <td>@Messages("fp.userAgent")</td>
                @display(column = "userAgentHttp")
            </tr>
            <tr id="acceptHttp">
                <td>@Messages("fp.accept")</td>
                @display(column = "acceptHttp")
            </tr>

            <tr id="encodingHttp">
                <td>@Messages("fp.encoding")</td>
                @display(column = "encodingHttp")
            </tr>

            <tr id="languageHttp">
                <td>@Messages("fp.language")</td>
                @display(column = "languageHttp")
            </tr>

            <tr id="pluginsJs">
                <td>@Messages("fp.plugins")</td>
                @display(column = "pluginsJs")
            </tr>

            <tr id="platformJs">
                <td>@Messages("fp.platformJ")</td>
                @display(column = "platformJs")
            </tr>

            <tr id="cookiesJs">
                <td>@Messages("fp.cookies")</td>
                @display(column = "cookiesJs")
            </tr>

            <tr id="dntJs">
                <td>@Messages("fp.dnt")</td>
                @display(column = "dntJs")
            </tr>

            <tr id="timezoneJs">
                <td>@Messages("fp.timezone")</td>
                @display(column = "timezoneJs")
            </tr>

            <tr id="resolutionJs">
                <td>@Messages("fp.resolutionJ")</td>
                @display(column = "resolutionJs")
            </tr>

            <tr id="localJs">
                <td>@Messages("fp.local")</td>
                @display(column = "localJs")
            </tr>

            <tr id="sessionJs">
                <td>@Messages("fp.session")</td>
                @display(column = "sessionJs")
            </tr>

            <tr id="canvasJs">
                <td>@Messages("fp.canvas")</td>
                @display(column = "canvasJs")
            </tr>

            <tr id="vendorWebGljs">
                <td>@Messages("fp.vendorWebGl")</td>
                <td></td>
                <td id="vendorWebGljsVal">@fp.get("vendorWebGljs")</td>
            </tr>

            <tr id="rendererWebGljs">
                <td>@Messages("fp.rendererWebGl")</td>
                <td></td>
                <td id="rendererWebGljsVal">@fp.get("rendererWebGljs")</td>
            </tr>

            <tr id="fontsFlash">
                <td>@Messages("fp.fonts")</td>
                @display(column = "fontsFlash")
            </tr>

            <tr id="resolutionFlash">
                <td>@Messages("fp.resolutionF")</td>
                @display(column = "resolutionFlash")
            </tr>

            <tr id="languageFlash">
                <td>@Messages("fp.languageF")</td>
                @display(column = "languageFlash")
            </tr>

            <tr id="platformFlash">
                <td>@Messages("fp.platformF")</td>
                @display(column = "platformFlash")
            </tr>

            <tr id="adBlock">
                <td>@Messages("fp.adBlock")</td>
                @display(column = "adBlock")
            </tr>

        </tbody>
    </table>
}